﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Configuration;


using System.Data;
using System.Data.Common;
using System.Data.SqlClient;
using System.Data.SqlTypes;
using uacars;

namespace CADLibraryClass
{
    public class OpcionesPedidoCAD
    {
        private string cadenaConexion;

        public OpcionesPedidoCAD()
        {
            cadenaConexion = Singleton.Instancia.Cadena;
        }


        public bool AltaOpcionesPedido(string nombre, float precio)
        {
            bool estadoOperacion = false;

            try
            {
                DataSet bdvirtual = new DataSet();

                SqlDataAdapter da = new SqlDataAdapter("select * from opcionespedido", cadenaConexion);
                da.Fill(bdvirtual, "opcionespedido");

                DataTable dt = new DataTable();
                dt = bdvirtual.Tables["opcionespedido"];

                DataRow nuevaFila = dt.NewRow();
                nuevaFila[0] = nombre;
                nuevaFila[1] = precio;

                dt.Rows.Add(nuevaFila);

                SqlCommandBuilder cBuilder = new SqlCommandBuilder(da);

                da.Update(bdvirtual, "opcionespedido");

                dt.AcceptChanges();
            }

            catch (SqlException sqlex)
            {
                throw new Exception("Error insertando opcionespedido en uacarsBD: " + nombre + ". " + sqlex.Message, sqlex);
            }

            catch (Exception ex)
            {
                throw ex;
            }
            estadoOperacion = true;

            return (estadoOperacion);
        }




        public void BorrarOpcionesPedido(string nombre)
        {
            try
            {
                DataSet bdvirtual = new DataSet();

                SqlDataAdapter da = new SqlDataAdapter("select * from opcionespedido", cadenaConexion);
                da.Fill(bdvirtual, "opcionespedido");

                DataTable dt = new DataTable();
                dt = bdvirtual.Tables["opcionespedido"];

                DataRow[] filaBorrar;
                filaBorrar = dt.Select("nombre Like '" + nombre + "'");
                filaBorrar[0].Delete();

                SqlCommandBuilder cBuilder = new SqlCommandBuilder(da);

                da.Update(bdvirtual, "opcionespedido");

                dt.AcceptChanges();

            }

            catch (SqlException sqlex)
            {
                throw new Exception("Error borrando opcionespedido en uacarsBD: " + nombre, sqlex);
            }

            catch (Exception ex)
            {
                throw ex;
            }
        }


        public DataTable BuscarOpcionesPedido()
        {
            DataSet dsOpcionesPedido = new DataSet();

            SqlDataAdapter da = new SqlDataAdapter("select * from opcionespedido", cadenaConexion);

            da.Fill(dsOpcionesPedido, "opcionespedido");

            DataTable dtOpcionesPedido = new DataTable();
            dtOpcionesPedido = dsOpcionesPedido.Tables["opcionespedido"];

            return (dtOpcionesPedido);
        }


        public float RecuperarPrecio(string nombre)
        {
            float precioV;

            DataSet bdvirtual = new DataSet();

            SqlDataAdapter da = new SqlDataAdapter("select * from opcionespedido WHERE nombre LIKE '" + nombre + "'", cadenaConexion);

            da.Fill(bdvirtual, "opcionespedido");



            DataTable dt = new DataTable();
            dt = bdvirtual.Tables["opcionespedido"];


            precioV = float.Parse(dt.Rows[0]["precio"].ToString());
            return (precioV);

        }




    }
}